投稿を報告する

yieldとは何ですか?

「単位面積(ha)あたり収穫量」なら「yield」です。 もともと土地の生産性を表わす語ですから。 実際に値を表示したら、単位が「Hg/Ha」と表示されるはず? つまり「1haあたり○○×100g(グラム)」という単位で表示してます。 2009年データだと、1haあたり5919.9kg(5.9199トン)ということに。 「Area harvested」は収穫面積ですね。

yield キーワードとは何ですか?

yield キーワードを使うと、テンポラリのコレクションを作成することなく、メソッドでコレクションを返すことができます。 この場合、IEnumerable (T は型) を戻り値の型に設定します。 そして yield return を呼ぶと、その戻り値をいわば暗黙的なコレクションに保存していき、メソッドを抜けるときにコレクションとして結果を返します。 具体例をみてください。 この結果はつぎのようになります。

yield文を使用するメソッドは何ですか?

yield文を使用するメソッドは、戻り値に IEnumerator 、 IEnumerable 、 IEnumerator 、 IEnumerable のいずれかを指定する必要があります。 後ろ二つは前二つのジェネリックメソッド版です。 ここではIEnumeratorを使用します。 このIteratorメソッドは 普通のメソッドのように呼び出しても何もしません。 メソッドを実行するにはまず戻り値を取得します。 この戻り値は 列挙子 (enumerator)といい、これを通してイテレーターメソッドを操作します。 列挙子から MoveNext メソッドを実行すると、yield文まで処理が進められます。

yield from と return はどう違いますか?

ただし、 yield from は関数内でしか記述できない手法なのでそこは注意しなければならない。 yield fromを使えばreturnの値までを取得が出来る。 結局はyieldかreturnに絞ったほうが良い。 Sign up for free and join this conversation.

関連記事

世界をリードする暗号資産取引プラットフォーム

ウェルカムギフトを受け取る